Courteous trajectory planning for automated vehicles

ABSTRACT

Systems and methods for driving trajectory planning of an automated vehicle. The system includes an electronic processor configured to determine a lane segment graph indicating allowable transitions between a plurality of lane segments. The electronic processor is also configured to determine a current type of traffic flow situation. The electronic processor is further configured to determine weighting factors for each of the allowable transitions based on aggregate observations of previous real-world traffic flow transitions for the current type of traffic flow situation. Each of the weighting factors indicate a likelihood of transition for a respective one of the allowable transitions. The electronic processor is also configured to determine a weighted lane segment graph based at least in part on the weighting factors. The electronic processor is further configured to determine a driving trajectory of the automated vehicle based at least in part on the weighted lane segment graph.

FIELD

The disclosure relates generally to automated driving systems. Morespecifically, the disclosure relates to courteous tactical reasoning inautomated driving systems.

BACKGROUND

Tactical reasoning enables automated driving systems to navigate throughcomplex traffic situations on the road. As automation increases,automated driving systems face correspondingly tougher challenges andmust therefore be able to react appropriately to a variety ofsituations. Automated vehicles must adhere to existing traffic laws,although following traffic laws alone may not be sufficient forcomfortable driving expected by passengers.

SUMMARY

Human drivers frequently adopt unspoken rules of common courtesy todetermine which lane on a road to occupy in order to provide a morecomfortable commute. For example, most countries have a notion of anovertaking lane and a slow lane when driving on highways. Human driverswho continually occupy the overtaking lane are considered rude. Anautomated driving system which does not adhere to unspoken rules ofpoliteness like this may cause undue distress and annoyance toend-users. Another example of this is the notion of yielding viachanging lanes to provide space to a vehicle entering a highway. Withoutsome notion that it should be courteous to another driver, an automateddriving system has no inherent reason to respect these conventions andtherefore may behave strangely by conventional standards. Aside fromcausing stress for users of the automated driving system, failure toyield in driving situations like this could cause stress to humandrivers of other vehicles on the road who may incorrectly anticipate apolite driver.

Robust prediction of other drivers' intent when driving on roadways isanother challenge facing automated driving systems. Robust predictiongreatly assists automated driving systems to behave consistently andcooperatively with other traffic participants throughout driving tasks.Human drivers intuitively reason the actions other drivers are likely toexecute based on contextual knowledge and indicators from other trafficparticipants. Analogous reasoning assists automated driving systems tomodel human behavior suitably and navigate comfortably in complextraffic scenes. Current automated vehicles utilize obvious intent cluessuch as turn indicators observed from a driving scene to accomplish thistask. Augmenting current approaches with additional contextualinformation improves the accuracy of an automated driving system'sprediction of other traffic participants to a level closer to humandrivers.

Thus, the disclosure provides a system for driving trajectory planningof an automated vehicle. In one implementation, the system includes anelectronic processor. The electronic processor is configured todetermine a lane segment graph indicating allowable transitions betweena plurality of lane segments. The electronic processor is alsoconfigured to determine a current type of traffic flow situation. Theelectronic processor is further configured to determine weightingfactors for each of the allowable transitions based on aggregateobservations of previous real-world traffic flow transitions for thecurrent type of traffic flow situation. Each of the weighting factorsindicate a likelihood of transition for a respective one of theallowable transitions. The electronic processor is also configured todetermine a weighted lane segment graph based at least in part on theweighting factors. The electronic processor is further configured todetermine a driving trajectory of the automated vehicle based at leastin part on the weighted lane segment graph. In some implementations, theelectronic processor is also configured to determine a predictedtrajectory on a neighboring vehicle based at least in part on the weightlane segment graph.

The disclosure also provides a method for driving trajectory planning ofan automated vehicle. The method includes determining, with anelectronic processor, a lane segment graph indicating allowabletransitions between a plurality of lane segments. The method alsoincludes determining, with the electronic processor, a current type oftraffic flow situation. The method further includes determining, withthe electronic processor, weighting factors for each of the allowabletransitions based on aggregate observations of previous real-worldtraffic flow transitions for the current type of traffic flow situation.Each of the weighting factors indicate a likelihood of transition for arespective one of the allowable transitions. The method also includesdetermining, with the electronic processor, a weighted lane segmentgraph based at least in part on the weighting factors. The methodfurther includes determining, with the electronic processor, a drivingtrajectory of the automated vehicle based at least in part on theweighted lane segment graph. In some implementations, the method alsoincludes determining, with the electronic processor, a predictedtrajectory of a neighboring vehicle based at least in part on the weightlane segment graph.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying figures, where like reference numerals refer toidentical or functionally similar elements throughout the separateviews, together with the detailed description below, are incorporated inand form part of the specification, and serve to further illustrateimplementations, and explain various principles and advantages of thoseimplementations.

FIG. 1 is a block diagram of one example an automated vehicle equippedwith a system for driving trajectory planning, in accordance with someimplementations.

FIG. 2 is a diagram of one example of a driving scene in which a firstvehicle is on an entrance ramp of a highway and a second vehicle isapproaching the ramp in the rightmost lane.

FIG. 3 is a diagram of one example of a predicted evolution of thedriving scene illustrated in FIG. 2.

FIG. 4 is flow diagram of one example of a method for driving trajectoryplanning of an automated vehicle, in accordance with someimplementations.

FIG. 5 is a diagram of one example of an unweighted lane segment graph,in accordance with some implementations.

FIG. 6 is a diagram of one example of a weighted lane segment graph fora dense traffic flow situation, in accordance with some implementations.

FIG. 7 is a diagram of one example of a predicted evolution of thedriving scene illustrated in FIG. 2 for a dense traffic flow situation,in accordance with some implementations.

FIG. 8 is a diagram of one example of a weighted lane segment graph fora light traffic flow situation, in accordance with some implementations.

FIG. 9 is a diagram of one example of a predicted evolution of thedriving scene illustrated in FIG. 2 for a light traffic flow situation,in accordance with some implementations.

The system and method components have been represented where appropriateby conventional symbols in the drawings, showing only those specificdetails that are pertinent to understanding the implementations so asnot to obscure the disclosure with details that will be readily apparentto those of ordinary skill in the art having the benefit of thedescription herein.

DETAILED DESCRIPTION

FIG. 1 is a block diagram of one example of an automated vehicle 100equipped with a system 102 for driving trajectory planning. Theautomated vehicle 100 illustrated in FIG. 1 is an automobile thatincludes four wheels 104, 106, 108, and 110. In some implementations,the system 102 is equipped to a vehicle with more or less than fourwheels. For example, the system 102 may be equipped to a motorcycle, atruck, a bus, a trailer, and the like. In practice, the automatedvehicle 100 includes additional components such as a propulsion system,a steering system, a braking system, and the like. For ease ofexplanation, these additional components are not illustrated here.

The system 102 illustrated in FIG. 1 includes an electronic controller112 (for example, an electronic control unit), a user interface 114, atransceiver 116, one or more vehicle sensors 118, a GNSS (globalnavigation satellite system) receiver 119, and a controller area networkbus (for example, CAN bus 120). In some implementations, the system 102includes fewer or additional components in configurations different fromthe one illustrated in FIG. 1. For example, in practice, the system 102may include additional components such as driving systems, and the like.For ease of explanation, these additional components are not illustratedhere. In some implementations, the system 102 is wholly or partiallycontained within the automated vehicle 100.

The electronic controller 112 illustrated in FIG. 1 includes anelectronic processor 122 (for example, one or more microprocessors,application-specific integrated circuits (ASICs), systems-on-a-chip(SoCs), or other electronic controllers), memory 124, and aninput/output interface 126. The components included in the electroniccontroller 112 are coupled to each other via one or more buses (notshown). The memory 124 includes, for example, read only memory (ROM),random access memory (RAM), an electrically erasable programmableread-only memory (EEPROM), other non-transitory computer-readable media,or a combination thereof. In some implementations, the memory 124 isincluded in the electronic processor 122. The electronic processor 122is configured to retrieve computer-readable instructions and data fromthe memory 124 and execute the computer-readable instructions to performthe functionality and methods described herein. The input/outputinterface 126 includes routines for transferring data between componentswithin the electronic controller 112 and components external to theelectronic controller 112. The input/output interface 126 is configuredto transmit and receive data via one or more wired couplings (forexample, wires, optical fiber, and the like), wirelessly, or acombination thereof. For example, the input/output interface 126 isconfigured to transmit and receive data via one or more wired couplingsto the CAN bus 120.

The user interface 114 includes, for example, one or more inputmechanisms (for example, a touch screen, a keypad, a button, a knob, andthe like), one or more output mechanisms (for example, a display, aspeaker, and the like), or a combination thereof. In someimplementations, the user interface 114 includes a touch-sensitiveinterface (for example, a touch-screen display) that displays visualoutput generated by software applications executed by the electronicprocessor 122. Visual output includes, for example, graphicalindicators, lights, colors, text, images, graphical user interfaces(GUIs), combinations of the foregoing, and the like. The touch-sensitiveinterface also receives user input using detected physical contact (forexample, detected capacitance or resistance). In some implementations,the user interface 114 is separated from the system 102.

The transceiver 116 includes routines for transferring informationbetween components within the system 102 and components external to thesystem 102. The transceiver 116 is configured to transmit and receivesignals wirelessly using, for example, Wi-Fi, Bluetooth, cellularnetworks, telematic networks, and the like. In some implementations, thetransceiver 116 is further configured to transmit and receive signalsvia one or more wired couplings (for example, wires, optical fiber, andthe like).

The one or more vehicle sensors 118 are physically coupled to theautomated vehicle 100 and are configured to capture, among other things,position data of neighboring vehicles. The one or more vehicle sensors118 include, for example, visual sensors, radar sensors, ultrasonicsensors, LIDAR sensors, and the like. In some implementations, the oneor vehicle sensors 118 include a camera (for example, a video cameraand/or a photographic camera) that is physically coupled to a componentof the automated vehicle 100 facing in the direction of forward driving(for example, a front bumper, a hood, a rear-view mirror, and the like).The camera is configured to capture roadway scene images of thesurroundings of the automated vehicle 100 (for example, a trafficscene). The camera is configured to transmit the captured roadway sceneimages to the electronic controller 112.

The GNSS (global navigation satellite system) receiver 119 receivesradio-frequency signals from orbiting satellites using one or moreantennas and receivers (not shown). The GNSS receiver 119 determinesgeo-spatial positioning (i.e., latitude, longitude, altitude, and speed)for the automated vehicle 100 based on the received radio-frequencysignals. The GNSS receiver 119 communicates this positioning informationto the electronic controller 112. The electronic controller 112 may usethis information in conjunction with or in place of information receivedfrom the vehicle sensors 118 when controlling the automated vehicle 100.The electronic controller 112 may also utilize information received bythe GNSS receiver 119 to plan routes and navigate the automated vehicle100. GNSS receivers are known and will not be described in greaterdetail. In some implementations, the GNSS receiver 119 may operate usingthe GPS (global positioning system). Alternative implementations may usea regional satellite navigation system, and/or a land-based navigationsystem in conjunction with or in place of the GNSS receiver 119.

FIG. 2 is one example of a driving scene. In the driving sceneillustrated in FIG. 2, a first vehicle 202 is on an entrance ramp of ahighway and a second vehicle 204 is approaching the ramp in therightmost lane. FIG. 3 is one example of a predicted evolution of thedriving scene illustrated in FIG. 2 from the perspective of the firstvehicle 202. The first vehicle 202 predicts future states of both thefirst vehicle 202 and the second vehicle 204. The first vehicle 202 isin control of its own movement and in this case is only considering onepath (i.e., merging into the next lane). However, the first vehicle 202is unable to control the movement of the second vehicle 204, and thuspredicts all potential end states for the second vehicle 204 in thefuture. The t=n portion of the reference labels in FIG. 3 represent thestates of the first vehicle 202 and the second vehicle 204 at futuretime n. As illustrated in FIG. 3, the second vehicle 204 has numerouspotential paths which result in three resultant states which areindicated by reference characters 204A, 204B, and 204C, respectively.The uncertainty of the state of the second vehicle 204 is illustrated inFIG. 3 by shading, with shading indicating low confidence in thepredicted state and the lack of shading indicating high confidence inthe predicted state. As illustrated in FIG. 3, each possible futurestate of the second vehicle 204 is just as likely as the other states.Some current systems use perceived clues (for example, turn indicators)to determine the most likely next course of action for the secondvehicle 204. However, current systems have no contextual knowledge ofwhat other vehicles are likely do to a priori. This leads to allpossible end states for the second vehicle 204 being equally likely fromthe perspective of the first vehicle 202 because current systems rely onreal-time observations alone to deduce the likely intent.

FIG. 4 is a flow diagram of one example of a method 400 for drivingtrajectory planning of the automated vehicle 100. At block 402, a lanesegment graph is determined (for example, by the electronic processor122). FIG. 5 is one example of a lane segment graph for the drivingscene illustrated in FIG. 2. The lane segment graph divides the road ina plurality of lane segments that are overlaid on top of the roadway.The lane segment graph indicates allowable transitions between theplurality of lane segments. For example, the lane segment graphillustrated in FIG. 5 indicates allowable transition between theplurality of lane segments with arrows. In some implementations, theelectronic processor 122 is configured to determine the lane segmentgraph via a navigation system (for example, the GNSS receiver 119). Forexample, the GNSS receiver 119 determines a location of the automatedvehicle 100 using global positioning system (GPS) coordinates and theelectronic processor 122 uses the determined GPS coordinates to receivea map of the roadway around the automated vehicle 100 from a mapsupplier via the transceiver 116. In some implementations, theelectronic processor 122 is configured to determine the lane segmentgraph by receiving the lane segment graph from an external source. Forexample, the electronic processor 122 determines a location of theautomated vehicle 100, sends the determined location (and potentiallyadditional information such as lateral driving direction) to a remoteserver, and responsively receives the lane segment graph from the remoteserver.

At block 404, a current type of traffic flow situation is determined(for example, by the electronic processor 122). The current type oftraffic flow situation represents the current amount of traffic flowingthrough a roadway. Some examples of types of traffic flow situationsinclude a dense traffic flow situation and a light traffic flowsituation, as well as other traffic flow amounts on a spectrum oftraffic flow situations. In some implementations, the current type oftraffic flow situation represents the current amount of traffic flowingthrough the plurality of lane segments included in the lane segmentgraph. Alternatively, or in addition, the current type of traffic flowsituation represents the current amount of traffic flowing near theplurality of lane segments included in the lane segment graph. Forexample, with respect to the driving scene illustrated in FIG. 2, thecurrent type of traffic flow situation may represent the current amountof traffic flowing on the highway that the second vehicle 204 istraveling on.

In some implementations, the electronic processor 122 is configured todetermine the current type of traffic flow situation based at least inpart on the current time. For example, the electronic processor 122 maydetermine a dense traffic flow situation when the current time is withina historically observed rush hour period. As a further example, theelectronic processor 122 may determine a light traffic flow situationwhen the current time is outside historically observed rush hourperiods. In some implementations, alternatively, or in addition, tousing the current time of day, the electronic processor 122 isconfigured to determine the current type of traffic flow situation basedat least in part on the current day of the week. For example, theelectronic processor 122 may determine a dense traffic flow situationwhen the current day of the week is a weekday and the current time iswithin a historically observed rush hour period for weekdays. As afurther example, the electronic processor 122 may determine a lighttraffic flow situation when the current day of the week is a weekend andthe current time is within a historically observed non-rush hour periodfor weekdays. In some implementations, alternatively, or in addition, tousing the current time of day and the current day of the week, theelectronic processor 122 is configured to determine the current type oftraffic flow situation based at least in part on the current date. Forexample, the electronic processor 122 may determine a dense traffic flowsituation when the current day of the week of the week is Friday, thecurrent date is a day before a three-day weekend, and the current timeis within a historically observed rush hour period for three-dayweekends (for example, its 3:00 PM on a Friday before memorial dayweekend). As a further example, the electronic processor 122 maydetermine a light traffic flow situation when the current day of theweek is a weekday, the current time is within a historically observedrush hour period for weekdays, and the current date is a nationalholiday when most businesses are closed (for example, labor day).

In some implementations, the electronic processor 122 is configured todetermine the current type of traffic flow situation based on real-timetraffic data received, for example, via the transceiver 116. Thereal-time traffic data indicates, for example, the average speed ofvehicles passing through a portion of a road and the electronicprocessor 122 is configured to determine the current type of trafficflow situation based on the average speed. For example, the electronicprocessor 122 may determine a dense traffic flow when the average speedis greater than a threshold and determine a light traffic flow situationwhen the average speed is less than or equal to the threshold. Asanother example, the real-time traffic data may indicate real-timepositions of neighboring vehicles in the roadway. Alternatively, or inaddition, the real-time traffic data indicates real-time positions (forexample, GPS coordinates) of neighboring vehicles in the roadway. Forexample, the electronic processor 122 may determine a dense traffic flowwhen more than a threshold quantity of neighboring vehicles arepositioned in the roadway and determine a light traffic flow situationwhen less than or equal to the threshold quantity of neighboringvehicles are positioned in the roadway. In some implementations, theelectronic processor 122 is configured to receive real-time traffic datavia the transceiver 116 from neighboring vehicles, a remote sever, orboth. Real-time traffic data may include, for example, real-timeconstruction information and real-time crash information.

In some implementations, the electronic processor 122 is configured todetermine the current type of traffic flow situation based on positiondata of neighboring vehicles in the roadway captured, for example, bythe one or more vehicle sensors 118. For example, a camera included insome implementations of the one or more vehicle sensors 118 may captureimages of neighboring vehicles positioned on the roadway and theelectronic processor 122 is configured to determine the current type oftraffic flow situation based on the quantity of neighboring vehiclesincluded in the captured images. As a further example, radar sensorsincluded in some implementations of the one or more vehicle sensors 118may detect the presence of neighboring vehicles positioned on theroadway and the electronic processor 122 is configured to determine thecurrent type of traffic flow situation based on the quantity ofneighboring vehicles detected by the radar sensors.

Returning to FIG. 4, at block 406, weighting factors for each of theallowable transitions in the lane segment graph are determined (forexample, by the electronic processor 122). The weighting factors providecontextual information regarding likely (for example, expected)transitions that neighboring vehicles will execute, and what commonactions human drivers in the same driving situation as the currentdriving situation have taken in the past. Each of the weighting factorsindicate a likelihood of transition for a respective one of theallowable transitions in the lane segment graph. For example, a firstweighting factor may indicate a low likelihood of transition for a firstallowable transition from a first lane segment to a second lane segment,and a second weighting factor may indicate a high likelihood oftransition for a second allowable transition from the second lanesegment to the first lane segment.

The electronic processor 122 is configured to determine weightingfactors based on aggregate observations of previous real-world trafficflow situations for the current type of traffic flow situation. Forexample, aggregate observations may indicate that an allowabletransition from one lane segment to another lane segment is made manytimes during dense traffic flow and is made few times during lighttraffic flow. In some implementations, the electronic processor 122 isconfigured to receive data stored in the memory 124 that indicatesaggregate observations of different previous real-world traffic flowsituations. Alternatively, or in addition, the electronic processor 122is configured to receive data indicating aggregate observations ofdifferent previous real-world traffic flow situations via thetransceiver 116 from an external source. For example, the electronicprocessor 122 receives data via the transceiver 116 from a databasestored in a remote server. In some implementations, the aggregateobservations are frequently updated, for example, through a centralizedtraffic data aggregation system. For example, the aggregate observationsare updated to reflect new traffic patterns. In some implementations,the aggregate observations incorporate regional driving behaviors.

At block 408, a weighted lane segment graph is determined based at leastin part on the weighting factors determined at block 406. FIG. 6 is oneexample of a weighted lane segment graph for the driving sceneillustrated in FIG. 2 during a period of dense traffic. In FIG. 6, theweighting of the arrows is indicated by shading. The arrows in FIG. 6without shading represent commonly executed transitions. The arrows inFIG. 6 with horizontal shading represent somewhat common transitions.The arrows in FIG. 6 with vertical shading represent rarely executedtransitions.

At block 410, a driving trajectory of the automated vehicle 100 isdetermined (for example, by the electronic processor 122) based at leastin part on the weighted lane segment graph. In some implementations, asused here, the term “trajectory” solely defines a path for a vehicle anddoes not require the traversal of the path in time. In otherimplementations, as used here, the term “trajectory” defines both a pathfor a vehicle and how the vehicle traverses through the path in time atone or more target speeds. For example, with reference to FIG. 3, thedriving trajectory may include a driving route along the predictedstates for the first vehicle 202, a target speed of 30 miles per hour(MPH) at future time t=1, a target speed of 35 MPH at future time t=2, atarget speed of 45 MPH at future time t=3, and a target speed of 55 MPHat future time t=4. Alternatively, or in addition, the drivingtrajectory of the automated vehicle 100 includes, for example, aspecific type of lane change for the automated vehicle 100 (for example,changing from an overtaking lane to a slow lane), a single speed targetfor the automated vehicle 100, or a combination thereof.

In some implementations, the electronic processor 122 is configured touse the weighted lane segment graph to determine a predicted trajectoryof a neighboring vehicle, and then use the predicted trajectory of theneighboring vehicle to determine a driving trajectory of the automatedvehicle 100. As a first example, when the current type of trafficsituation is dense traffic flow, the electronic processor 122 may applythe weighted lane segment graph illustrated in FIG. 5 to the drivingscene illustrated in FIG. 2 to determine a predicted trajectory of theneighboring vehicle (i.e., second vehicle 204).

FIG. 7 illustrates one example of a predicted evolution of the drivingscene illustrated in FIG. 2 from the perspective of the first vehicle202 being the automated vehicle 100 and the second vehicle 204 being aneighboring vehicle. The electronic processor 122 is configured topredict future states of both the first vehicle 202 and the secondvehicle 204. The t=n portion of the reference labels in FIG. 7 representthe states of the first vehicle 202 and the second vehicle 204 at futuretime n. As illustrated in FIG. 7, the second vehicle 204 has numerouspotential driving paths which result in three resultant states which areindicated by reference characters 204A, 204B, and 204C, respectively.Note that FIG. 7 only illustrates the expansion of possible trajectoriesat time t=0. Possible trajectories can be further expanded at any timestep. The uncertainty of the state of the second vehicle 204 isillustrated in FIG. 7 by shading, with shading indicating highconfidence in the predicted state and the lack of shading indicating lowconfidence in the predicted state. As illustrated in FIG. 7, thepredicted trajectory of the second vehicle 204 with the highestconfidence indicates that the second vehicle 204 will most likely exitat the ramp. Based at least in part on the predicted trajectory of thesecond vehicle 204, the electronic processor 122 may determine a drivingtrajectory for the first vehicle 202 to enter the highway withoutcolliding with (or obstructing the predicted trajectory of) the secondvehicle 204. For example, the electronic processor 122 may determine adriving trajectory in which the first vehicle 202 slows down to allowthe second vehicle 204 to exit in front of the first vehicle 202 at theramp.

As a second example, when the current type of traffic situation is lighttraffic flow, the electronic processor 122 may apply the weighted lanesegment graph illustrated in FIG. 8 to the driving scene illustrated inFIG. 2 to determine a predicted trajectory of the neighboring vehicle(i.e., second vehicle 204). FIG. 8 is one example of a weighted lanesegment graph for the traffic scene illustrated in FIG. 2 during aperiod of light traffic. In FIG. 8, the weighting of the arrows isindicated by shading. The arrows in FIG. 8 without shading representcommonly executed transitions. The arrows in FIG. 8 with horizontalshading represent somewhat common transitions. The arrows in FIG. 8 withvertical shading represent rarely executed transitions.

FIG. 9 illustrates one example of a predicted evolution of the drivingscene illustrated in FIG. 2 again from the perspective of the firstvehicle 202 being the automated vehicle 100 and the second vehicle 204being a neighboring vehicle. The electronic processor 122 is configuredto predict future states of both the first vehicle 202 and the secondvehicle 204. The t=n portion of the reference labels in FIG. 9 representthe states of the first vehicle 202 and the second vehicle 204 at futuretime n. As illustrated in FIG. 9, the second vehicle 204 has numerouspotential driving paths which result in three resultant states which areindicated by reference characters 204A, 204B, and 204C, respectively.Note that FIG. 8 only illustrates the expansion of possible trajectoriesat time t=0. Possible trajectories can be further expanded at any timestep. The uncertainty of the state of the second vehicle 204 isillustrated in FIG. 9 by shading, with shading indicating highconfidence in the predicted state and the lack of shading indicating lowconfidence in the predicted state. As illustrated in FIG. 9, thepredicted trajectory of the second vehicle 204 with the highestconfidence indicates that the second vehicle 204 will most likely tochange lanes to give space for the first vehicle 202 to merge onto thehighway. Based at least in part on the predicted trajectory of thesecond vehicle 204, the electronic processor 122 may determine a drivingtrajectory for the first vehicle 202 to enter the highway. For example,the electronic processor 122 may determine a driving trajectory in whichthe first vehicle 202 does not slow down because the path for the firstvehicle 202 to merge onto the highway is clear.

In some implementations, the electronic processor 122 is configured touse the weighted lane segment graph to determine a driving trajectoryfor the automated vehicle 100 that imitates common courteous behaviorsof human drivers. For example, most countries have a notion of anovertaking lane and a slow lane when driving on highways. Thus, in someimplementations, the electronic processor 122 is configured to selectbetween an overtaking lane and a slow lane based at least in part on theweighted lane segment graph. For example, when the current type oftraffic flow situation is a light traffic flow situation, the weightedlane segment graph may indicate that most vehicles occupy the slow lane.Thus, the electronic processor 122 may determine a driving trajectory ofthe automated vehicle 100 that primarily includes the slow lane.

In some implementations, the electronic processor 122 selects from a setof available lanes on a roadway based at least in part on the weightedlane graph segment. For example, as described above and illustrated inFIG. 9, yielding via changing lanes to provide space to a vehicleentering a highway is another example of common courteous behavior ofhuman drivers. Thus, in some implementations, the electronic processor122 selects between an outermost lane and a lane adjacent to theoutermost lane on a highway based at least in part on the weighted lanesegment graph. For example, looking at the driving scene illustrated inFIG. 2 from the perspective of the second vehicle 204 being theautomated vehicle 100 and the first vehicle 202 being the neighboringvehicle, a driving trajectory determined for the second vehicle 204using the weighted lane segment graph may include changing lanes fromthe rightmost non-exit/entrance lane to the adjacent lane during aperiod of light traffic flow.

In some implementations, the electronic processor 122 is configured totake at least one action for the automated vehicle 100 based on thedriving trajectory. The action may be operating various vehicle systemsto navigate the automated vehicle 100 along the driving trajectory. Forexample, the electronic processor 122 is configured to send controlsignals to a propulsion system, a steering system, and a braking systemof the automated vehicle 100 which cause these systems to navigate theautomated vehicle 100 along the driving trajectory.

Utilizing the systems and methods described herein in automated drivingsystems increases the reliability and accurate tactical reasoning aboutwhat other traffic participants are likely to do in a given scenario.The systems and methods described herein also provides a manner toprovide a contextualized notion of courtesy for automated drivingsystems. Courteous automated driving improves driver trust and comfortwith automated driving systems as well as improves safety and qualitymetrics because, among other things, the automated driving system isdriving in a more human-like and courteous manner.

Various aspects of the disclosure may take any one or more of thefollowing exemplary configurations.

EEE(1) A system for driving trajectory planning of an automated vehicle,the system comprising: an electronic processor configured to determine alane segment graph indicating allowable transitions between a pluralityof lane segments, determine a current type of traffic flow situation,determine weighting factors for each of the allowable transitions basedon aggregate observations of previous real-world traffic flowtransitions for the current type of traffic flow situation, each of theweighting factors indicating a likelihood of transition for a respectiveone of the allowable transitions, determine a weighted lane segmentgraph based at least in part on the weighting factors, and determine adriving trajectory of the automated vehicle based at least in part onthe weighted lane segment graph.

EEE(2) The system of EEE(1), wherein the electronic processor is furtherconfigured to: detect a neighboring vehicle located in one of theplurality of lane segments, determine a predicted trajectory of theneighboring vehicle based at least in part on the weighted lane segmentgraph, and determine the driving trajectory of the automated vehiclebased at least in part on the weighted lane segment graph and thepredicted trajectory of the neighboring vehicle.

EEE(3) The system of EEE(1) or EEE(2), wherein the electronic processoris further configured to determine the current type of traffic flowsituation based at least in part at least one selected from the groupconsisting of a current time, a current day of the week, and a currentdate.

EEE(4) The system of any one of EEE(1) to EEE(3), further comprising atransceiver communicably coupled to the electronic processor, whereinthe electronic processor is further configured to: receive real-timetraffic data via the transceiver, and determine the current type oftraffic flow situation based at least in part on the real-time trafficdata.

EEE(5) The system of any one of EEE(1) to EEE(4), further comprising oneor more vehicle sensors physically coupled to the automated vehicle andcommunicably coupled to the electronic processor, wherein the one ormore vehicle sensors are configured to capture position data of one ormore neighboring vehicles, wherein the electronic processor is furtherconfigured to determine the current type of traffic flow situation basedat least in part on the position data of the one or more neighboringvehicles.

EEE(6) The system of any one of EEE(1) to EEE(5), wherein the currenttype of traffic flow situation includes at least one selected from thegroup consisting of a dense traffic flow situation and a light trafficflow situation.

EEE(7) The system of any one of EEE(1) to EEE(6), wherein, to determinethe driving trajectory of the automated vehicle based at least in parton the weighted lane segment graph, the electronic processor is furtherconfigured to select from a set of available lanes on a roadway based atleast in part on the weighted lane segment graph.

EEE(8) The system of any one of EEE(1) to EEE(7), wherein, to determinethe driving trajectory of the automated vehicle based at least in parton the weighted lane segment graph, the electronic processor is furtherconfigured to select between an overtaking lane and a slow lane based atleast in part on the weighted lane segment graph.

EEE(9) The system of any one of EEE(1) to EEE(8), wherein the drivingtrajectory of the automated vehicle includes a driving route for theautomated vehicle to navigate and a plurality of target speeds for theautomated vehicle at different points along the driving route.

EEE(10) The system of any one of EEE(1) to EEE(9), wherein theelectronic processor is further configured to take at least one actionfor the automated vehicle based on the driving trajectory.

EEE(11) A method for driving trajectory planning of an automatedvehicle, the method comprising: determining, with an electronicprocessor, a lane segment graph indicating allowable transitions betweena plurality of lane segments; determining, with the electronicprocessor, a current type of traffic flow situation; determining, withthe electronic processor, weighting factors for each of the allowabletransitions based on aggregate observations of previous real-worldtraffic flow transitions for the current type of traffic flow situation,each of the weighting factors indicating a likelihood of transition fora respective one of the allowable transitions; determining, with theelectronic processor, a weighted lane segment graph based at least inpart on the weighting factors; and determining, with the electronicprocessor, a driving trajectory of the automated vehicle based at leastin part on the weighted lane segment graph.

EEE(12) The method of EEE(11), further comprising: detecting, with theelectronic processor, a neighboring vehicle located in one of theplurality of lane segments; determining, with the electronic processor,a predicted trajectory of the neighboring vehicle based at least in parton the weighted lane segment graph; and determining, with the electronicprocessor, the driving trajectory of the automated vehicle based atleast in part on the weighted lane segment graph and the predictedtrajectory of the neighboring vehicle.

EEE(13) The method of EEE(11) or EEE(12), further comprising,determining, with the electronic processor, the current type of trafficflow situation based at least in part on at least one selected from thegroup consisting of a current time, a current day of the week, and acurrent date.

EEE(14) The method of any one of EEE(11) to EEE(13), further comprising:receiving, at the electronic processor, real-time traffic data via atransceiver, wherein the transceiver is communicably coupled to theelectronic processor; and determining, with the electronic processor,the current type of traffic flow situation based at least in part on thereal-time traffic data.

EEE(15) The method of any one of EEE(11) to EEE(14), furtheringcomprising: capturing position data of one or more neighboring vehicleswith one or more vehicle sensors, wherein the one or more vehiclesensors are physically coupled to the automated vehicle and communicablycoupled to the electronic processor; and determining, with theelectronic processor, the current type of traffic flow situation basedat least in part on the position data of the one or more neighboringvehicles.

EEE(16) The method of any one of EEE(11) to EEE(15), wherein the currenttype of traffic flow situation includes at least one selected from thegroup consisting of a dense traffic flow situation and a light trafficflow situation.

EEE(17) The method of any one of EEE(11) to EEE(16), whereindetermining, with the electronic processor, the driving trajectory ofthe automated vehicle based at least in part on the weighted lanesegment graph includes selecting, with the electronic processor, from aset of available lanes on a roadway based at least in part on theweighted lane segment graph.

EEE(18) The method of any one of EEE(11) to EEE(17), whereindetermining, with the electronic processor, the driving trajectory ofthe automated vehicle based at least in part on the weighted lanesegment graph includes selecting, with the electronic processor, betweenan overtaking lane and a slow lane based at least in part on theweighted lane segment graph.

EEE(19) The method of any one of EEE(11) to EEE(18), wherein the drivingtrajectory of the automated vehicle includes a driving route for theautomated vehicle to navigate and a plurality of target speeds for theautomated vehicle at different points along the driving route.

EEE(20) The method of any one of EEE(11) to EEE(19), further comprisingtaking, with the electronic processor, at least one action for theautomated vehicle based on the driving trajectory.

Thus, the disclosure provides, among other things, systems and methodsfor driving trajectory planning of an automated vehicle. Variousfeatures and advantages are set forth in the following claims.

In the foregoing specification, specific implementations have beendescribed. However, one of ordinary skill in the art appreciates thatvarious modifications and changes may be made without departing from thescope of the claims set forth below. Accordingly, the specification andfigures are to be regarded in an illustrative rather than a restrictivesense, and all such modifications are intended to be included within thescope of the disclosure.

The benefits, advantages, solutions to problems, and any element(s) thatmay cause any benefit, advantage, or solution to occur or become morepronounced are not to be construed as a critical, required, or essentialfeatures or elements of any or all the claims. The invention is definedsolely by the appended claims including any amendments made during thependency of this application and all equivalents of those claims asissued.

Moreover in this document, relational terms such as first and second,top and bottom, and the like may be used solely to distinguish oneentity or action from another entity or action without necessarilyrequiring or implying any actual such relationship or order between suchentities or actions. The terms “comprises,” “comprising,” “has,”“having,” “includes,” “including,” “contains,” “containing” or any othervariation thereof, are intended to cover a non-exclusive inclusion, suchthat a process, method, article, or apparatus that comprises, has,includes, contains a list of elements does not include only thoseelements but may include other elements not expressly listed or inherentto such process, method, article, or apparatus. An element proceeded by“comprises . . . a,” “has . . . a,” “includes . . . a,” or “contains . .. a” does not, without more constraints, preclude the existence ofadditional identical elements in the process, method, article, orapparatus that comprises, has, includes, contains the element. The terms“a” and “an” are defined as one or more unless explicitly statedotherwise herein. The terms “substantially,” “essentially,”“approximately,” “about” or any other version thereof, are defined asbeing close to as understood by one of ordinary skill in the art, and inone non-limiting embodiment the term is defined to be within 10%, inanother embodiment within 5%, in another embodiment within 1% and inanother embodiment within 0.5%. The term “coupled” as used herein isdefined as connected, although not necessarily directly and notnecessarily mechanically. A device or structure that is “configured” ina certain way is configured in at least that way, but may also beconfigured in ways that are not listed.

The Abstract is provided to allow the reader to quickly ascertain thenature of the technical disclosure. It is submitted with theunderstanding that it will not be used to interpret or limit the scopeor meaning of the claims. In addition, in the foregoing DetailedDescription, it can be seen that various features are grouped togetherin various embodiments for the purpose of streamlining the disclosure.This method of disclosure is not to be interpreted as reflecting anintention that the claimed embodiments require more features than areexpressly recited in each claim. Rather, as the following claimsreflect, inventive subject matter lies in less than all features of asingle disclosed embodiment. Thus, the following claims are herebyincorporated into the Detailed Description, with each claim standing onits own as a separately claimed subject matter.

What is claimed is:
 1. A system for driving trajectory planning of anautomated vehicle, the system comprising: an electronic processorconfigured to determine a lane segment graph indicating allowabletransitions between a plurality of lane segments, determine a currenttype of traffic flow situation, determine weighting factors for each ofthe allowable transitions based on aggregate observations of previousreal-world traffic flow transitions for the current type of traffic flowsituation, each of the weighting factors indicating a likelihood oftransition for a respective one of the allowable transitions, determinea weighted lane segment graph based at least in part on the weightingfactors, and determine a driving trajectory of the automated vehiclebased at least in part on the weighted lane segment graph.
 2. The systemof claim 1, wherein the electronic processor is further configured to:detect a neighboring vehicle located in one of the plurality of lanesegments, determine a predicted trajectory of the neighboring vehiclebased at least in part on the weighted lane segment graph, and determinethe driving trajectory of the automated vehicle based at least in parton the weighted lane segment graph and the predicted trajectory of theneighboring vehicle.
 3. The system of claim 1, wherein the electronicprocessor is further configured to determine the current type of trafficflow situation based at least in part at least one selected from thegroup consisting of a current time, a current day of the week, and acurrent date.
 4. The system of claim 1, further comprising a transceivercommunicably coupled to the electronic processor, wherein the electronicprocessor is further configured to: receive real-time traffic data viathe transceiver, and determine the current type of traffic flowsituation based at least in part on the real-time traffic data.
 5. Thesystem of claim 1, further comprising one or more vehicle sensorsphysically coupled to the automated vehicle and communicably coupled tothe electronic processor, wherein the one or more vehicle sensors areconfigured to capture position data of one or more neighboring vehicles,wherein the electronic processor is further configured to determine thecurrent type of traffic flow situation based at least in part on theposition data of the one or more neighboring vehicles.
 6. The system ofclaim 1, wherein the current type of traffic flow situation includes atleast one selected from the group consisting of a dense traffic flowsituation and a light traffic flow situation.
 7. The system of claim 1,wherein, to determine the driving trajectory of the automated vehiclebased at least in part on the weighted lane segment graph, theelectronic processor is further configured to select from a set ofavailable lanes on a roadway based at least in part on the weighted lanesegment graph.
 8. The system of claim 1, wherein, to determine thedriving trajectory of the automated vehicle based at least in part onthe weighted lane segment graph, the electronic processor is furtherconfigured to select between an overtaking lane and a slow lane based atleast in part on the weighted lane segment graph.
 9. The system of claim1, wherein the driving trajectory of the automated vehicle includes adriving route for the automated vehicle to navigate and a plurality oftarget speeds for the automated vehicle at different points along thedriving route.
 10. The system of claim 1, wherein the electronicprocessor is further configured to take at least one action for theautomated vehicle based on the driving trajectory.
 11. A method fordriving trajectory planning of an automated vehicle, the methodcomprising: determining, with an electronic processor, a lane segmentgraph indicating allowable transitions between a plurality of lanesegments; determining, with the electronic processor, a current type oftraffic flow situation; determining, with the electronic processor,weighting factors for each of the allowable transitions based onaggregate observations of previous real-world traffic flow transitionsfor the current type of traffic flow situation, each of the weightingfactors indicating a likelihood of transition for a respective one ofthe allowable transitions; determining, with the electronic processor, aweighted lane segment graph based at least in part on the weightingfactors; and determining, with the electronic processor, a drivingtrajectory of the automated vehicle based at least in part on theweighted lane segment graph.
 12. The method of claim 11, furthercomprising: detecting, with the electronic processor, a neighboringvehicle located in one of the plurality of lane segments; determining,with the electronic processor, a predicted trajectory of the neighboringvehicle based at least in part on the weighted lane segment graph; anddetermining, with the electronic processor, the driving trajectory ofthe automated vehicle based at least in part on the weighted lanesegment graph and the predicted trajectory of the neighboring vehicle.13. The method of claim 11, further comprising, determining, with theelectronic processor, the current type of traffic flow situation basedat least in part on at least one selected from the group consisting of acurrent time, a current day of the week, and a current date.
 14. Themethod of claim 11, further comprising: receiving, at the electronicprocessor, real-time traffic data via a transceiver, wherein thetransceiver is communicably coupled to the electronic processor; anddetermining, with the electronic processor, the current type of trafficflow situation based at least in part on the real-time traffic data. 15.The method of claim 11, furthering comprising: capturing position dataof one or more neighboring vehicles with one or more vehicle sensors,wherein the one or more vehicle sensors are physically coupled to theautomated vehicle and communicably coupled to the electronic processor;and determining, with the electronic processor, the current type oftraffic flow situation based at least in part on the position data ofthe one or more neighboring vehicles.
 16. The method of claim 11,wherein the current type of traffic flow situation includes at least oneselected from the group consisting of a dense traffic flow situation anda light traffic flow situation.
 17. The method of claim 11, whereindetermining, with the electronic processor, the driving trajectory ofthe automated vehicle based at least in part on the weighted lanesegment graph includes selecting, with the electronic processor, from aset of available lanes on a roadway based at least in part on theweighted lane segment graph.
 18. The method of claim 11, whereindetermining, with the electronic processor, the driving trajectory ofthe automated vehicle based at least in part on the weighted lanesegment graph includes selecting, with the electronic processor, betweenan overtaking lane and a slow lane based at least in part on theweighted lane segment graph.
 19. The method of claim 11, wherein thedriving trajectory of the automated vehicle includes a driving route forthe automated vehicle to navigate and a plurality of target speeds forthe automated vehicle at different points along the driving route. 20.The method of claim 11, further comprising taking, with the electronicprocessor, at least one action for the automated vehicle based on thedriving trajectory.